package com.distributer.gateway.model;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.distributer.gateway.enums.RequestMethod;
import com.distributer.gateway.enums.RoteType;

/**
 * http请求上下文
 * @author xiaolin
 *
 */
public class RequestContext {

	private HttpServletRequest request;
	
	private HttpServletResponse response;
	
	private String reallyRequestUrl;
	
	private RequestMethod requestMethod;
	
	private Map<String, String> requestParam;
	
	private String eurakaServiceName;
	
	private RoteType roteType;
	
	private String[] eurakaServices;
	
	private long requestTime;
	
	private long responseTime;

	public HttpServletRequest getRequest() {
		return request;
	}

	public void setRequest(HttpServletRequest request) {
		this.request = request;
	}

	public HttpServletResponse getResponse() {
		return response;
	}

	public void setResponse(HttpServletResponse response) {
		this.response = response;
	}

	public String getReallyRequestUrl() {
		return reallyRequestUrl;
	}

	public void setReallyRequestUrl(String reallyRequestUrl) {
		this.reallyRequestUrl = reallyRequestUrl;
	}

	public RequestMethod getRequestMethod() {
		return requestMethod;
	}

	public void setRequestMethod(RequestMethod requestMethod) {
		this.requestMethod = requestMethod;
	}

	public Map<String, String> getRequestParam() {
		return requestParam;
	}

	public void setRequestParam(Map<String, String> requestParam) {
		this.requestParam = requestParam;
	}

	public String getEurakaServiceName() {
		return eurakaServiceName;
	}

	public void setEurakaServiceName(String eurakaServiceName) {
		this.eurakaServiceName = eurakaServiceName;
	}

	public RoteType getRoteType() {
		return roteType;
	}

	public void setRoteType(RoteType roteType) {
		this.roteType = roteType;
	}

	public String[] getEurakaServices() {
		return eurakaServices;
	}

	public void setEurakaServices(String[] eurakaServices) {
		this.eurakaServices = eurakaServices;
	}

	public long getRequestTime() {
		return requestTime;
	}

	public void setRequestTime(long requestTime) {
		this.requestTime = requestTime;
	}

	public long getResponseTime() {
		return responseTime;
	}

	public void setResponseTime(long responseTime) {
		this.responseTime = responseTime;
	}

}
